package com.zcloud.zcGbsServicer.dto;

import com.alibaba.cola.dto.Command;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;

/**
* web-client
* @Author makejava
* @Date 2026-01-21 17:23:16
*/
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ResourceDeviceUpdateCmd extends Command {
    @ApiModelProperty(value = "主键", name = "id", required = true)
    @NotNull(message = "主键不能为空")
    private Long id;
    @ApiModelProperty(value = "业务主键ID", name = "deviceId", required = true)
    @NotEmpty(message = "业务主键ID不能为空")
    private String deviceId;
    @ApiModelProperty(value = "资源类型:2控制室,3泵房(可扩展)", name = "bizType", required = true)
    @NotNull(message = "资源类型:2控制室,3泵房(可扩展)不能为空")
    private Integer bizType;
    @ApiModelProperty(value = "资源业务ID(控制室room_id/泵房pump_room_id)", name = "bizId", required = true)
    @NotEmpty(message = "资源业务ID(控制室room_id/泵房pump_room_id)不能为空")
    private String bizId;
    @ApiModelProperty(value = "设备名称", name = "deviceName", required = true)
    @NotEmpty(message = "设备名称不能为空")
    private String deviceName;
    @ApiModelProperty(value = "设备数量(控制室常用)", name = "deviceQty", required = true)
    @NotNull(message = "设备数量(控制室常用)不能为空")
    private Integer deviceQty;
    @ApiModelProperty(value = "设备型号(控制室常用)", name = "deviceModel", required = true)
    @NotEmpty(message = "设备型号(控制室常用)不能为空")
    private String deviceModel;
    @ApiModelProperty(value = "设备编号(泵房常用)", name = "deviceCode", required = true)
    @NotEmpty(message = "设备编号(泵房常用)不能为空")
    private String deviceCode;
    @ApiModelProperty(value = "设备分类(泵房常用)", name = "deviceCategory", required = true)
    @NotEmpty(message = "设备分类(泵房常用)不能为空")
    private String deviceCategory;
    @ApiModelProperty(value = "具体位置", name = "deviceLocation", required = true)
    @NotEmpty(message = "具体位置不能为空")
    private String deviceLocation;
    @ApiModelProperty(value = "负责人单位(泵房常用)", name = "chargeUnit", required = true)
    @NotEmpty(message = "负责人单位(泵房常用)不能为空")
    private String chargeUnit;
    @ApiModelProperty(value = "设备参数和规格(泵房常用)", name = "paramsSpec", required = true)
    @NotEmpty(message = "设备参数和规格(泵房常用)不能为空")
    private String paramsSpec;
    @ApiModelProperty(value = "排序", name = "sort", required = true)
    @NotNull(message = "排序不能为空")
    private Integer sort;
}

