package com.dcs.equipment.domain;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * @author: wangpx
 * @date: 2025-03-14 14:11
 */
@Data
@ApiModel(value = "设备数据请求")
public class DeviceRequest {
    @ApiModelProperty("协议类型：MODBUS_TCP, OPC_UA, MQTT，使用 CommProtocolType 常量")
    private int protocol;
    @ApiModelProperty("设备ID（Modbus slaveId / OPC UA session or node short id / MQTT clientId）")
    private Integer unitId;
    @ApiModelProperty(value = "数据类型 (1布尔, 2浮点数, 3整型)")
    private String dataType;
    @ApiModelProperty("资源/操作标识：如 Modbus functionCode，OPC UA namespaceIndex，MQTT Topic")
    private String resource;
    @ApiModelProperty("偏移量或索引：Modbus 的 startAddress，OPC UA 的 identifier，或 MQTT 可能留空")
    private Integer offsetOrIndex;
    @ApiModelProperty("数量或 QoS：Modbus 的 quantity，MQTT 的 qos，OPC UA 无需")
    private Integer lengthOrQos;
    @ApiModelProperty(value = "数据")
    private List<Object> data;
//    @ApiModelProperty("请求负载，Modbus 发布数据/写入值，MQTT 消息内容等")
//    private T payload;
}