1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package cn.iocoder.yudao.module.mes.controller.admin.collect.vo;
 
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
 
import java.math.BigDecimal;
import java.time.LocalDateTime;
 
@Schema(description = "管理后台 - MES 数采设备状态 Response VO")
@Data
public class MesCollectDeviceRespVO {
 
    @Schema(description = "设备台账编号", example = "1")
    private Long machineryId;
    @Schema(description = "设备编码", example = "MC_20260818001")
    private String machineryCode;
    @Schema(description = "设备名称", example = "注塑机 1 号")
    private String machineryName;
    @Schema(description = "工作站编号", example = "1")
    private Long workstationId;
    @Schema(description = "工作站名称", example = "注塑工作站")
    private String workstationName;
    @Schema(description = "数采设备编号", example = "C01")
    private String collectDeviceCode;
    @Schema(description = "是否启用数采", example = "true")
    private Boolean collectEnabled;
    @Schema(description = "最近采集时间")
    private LocalDateTime lastCollectTime;
    @Schema(description = "是否在线(5 分钟内有数据)", example = "true")
    private Boolean online;
    @Schema(description = "运行状态:1待机 2生产", example = "2")
    private Integer sts;
    @Schema(description = "运行状态名称", example = "生产")
    private String stsName;
    @Schema(description = "运行模式:0手动 1半自动 2电眼自动 3时间自动 4调模使用", example = "2")
    private Integer opm;
    @Schema(description = "运行模式名称", example = "电眼自动")
    private String opmName;
    @Schema(description = "油温", example = "26.5")
    private BigDecimal ot;
    @Schema(description = "各段温度 JSON")
    private String temps;
    @Schema(description = "生产任务编号", example = "1")
    private Long taskId;
    @Schema(description = "生产任务编码", example = "PT202610200001")
    private String taskCode;
    @Schema(description = "生产任务名称", example = "注塑任务")
    private String taskName;
    @Schema(description = "生产工单编号", example = "1")
    private Long workOrderId;
    @Schema(description = "生产工单编码", example = "PO202610200001")
    private String workOrderCode;
    @Schema(description = "未消除报警数量", example = "1")
    private Long activeAlarmCount;
    /**
     * 最近一次采集的完整数据 JSON。
     *
     * <p>设备网关上报的是中文键的瞬时值(如 {"计米":268.35,"线速度":0.0}),
     * 与注塑机协议的 STS/OPM/OT 结构不同,结构化字段(sts/opm/ot/temps)会是空的,
     * 前端展示「当前数据」需要这个原始 JSON。</p>
     */
    @Schema(description = "最近采集数据 JSON", example = "{\"计米\":268.35}")
    private String dataJson;
 
}