package com.njcn.gather.device.types.pojo.param;

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

import javax.validation.constraints.NotBlank;

/**
 * 设备类型保存参数。
 */
@Data
@ApiModel("设备类型保存参数")
public class DeviceTypeParam {

    @ApiModelProperty("设备类型名称")
    @NotBlank(message = "设备类型名称不能为空")
    private String name;

    @ApiModelProperty("关联ICD ID")
    private String icd;

    @ApiModelProperty("功率字典code，不带单位，前端从字典下拉选择后提交code")
    private String power;

    @ApiModelProperty("设备电压字典code，不带单位，前端从字典下拉选择后提交code")
    private Float devVolt;

    @ApiModelProperty("设备电流字典code，不带单位，前端从字典下拉选择后提交code")
    private Float devCurr;

    @ApiModelProperty("通道数字典code，不带单位，前端从字典下拉选择后提交code")
    private Integer devChns;

    @ApiModelProperty("录波命令")
    private String waveCmd;

    @ApiModelProperty("报告模板名称")
    private String reportName;

    /**
     * 设备类型编辑参数。
     */
    @Data
    @EqualsAndHashCode(callSuper = true)
    @ApiModel("设备类型编辑参数")
    public static class UpdateParam extends DeviceTypeParam {

        @ApiModelProperty("设备类型ID")
        @NotBlank(message = "设备类型ID不能为空")
        private String id;
    }
}
