package com.zksy.visualization.domain.request;

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

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * @author Administrator
 * @version 1.0
 * @project dh-server-micro
 * @description 用能统计
 * @date 2024/12/17 09:23:22
 */
@Data
public class UsingEnergyRequest {
    @ApiModelProperty(value = "组织类型，1:基本组织，2:逻辑组织", required = true, example = "1")
    @NotNull(message = "组织类型不能为空")
    private Integer orgType;

    @ApiModelProperty(value = "日期类型，0:按日，1:按月，2:按年", required = true, example = "0")
    @NotNull(message = "日期类型不能为空")
    private Integer dateType;

    @ApiModelProperty(value = "组织编码列表", required = true)
    @NotEmpty(message = "组织编码列表不能为空")
    private List<String> orgData;

    @ApiModelProperty(value = "设备编码列表", required = false)
    private List<String> deviceCode;

    @ApiModelProperty(value = "通道编码列表", required = false)
    private List<String> channelId;

    @ApiModelProperty(value = "日期，格式取决于dateType：2021-05-17(按日), 2021-05(按月), 2021(按年)", required = true)
    @NotEmpty(message = "日期不能为空")
    private String date;

    @ApiModelProperty(value = "分项类型，规则如下：001001表示两个下拉框都选第一个；若第一个下拉框选第一个，第二个下拉框选全部，则传001；若两个下拉框都是全部，传空字符串。选项包括：001：照明插座用电, 002：空调用电, 003：动力用电, 004：特殊用电", required = true)
    @NotEmpty(message = "分项类型不能为空")
    private String airSwitchType;
}
