package com.yuchen.saas.park.api.dto.property;


import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 房间仪表
 * </p>
 *
 * @author cxj
 * @since 2023-11-21
 */
@Data
@ApiModel(value="PropertyHouseMeterAddDto", description="新增")
public class PropertyHouseMeterAddDto {

    @ApiModelProperty(name = "id", value = "id")
    private Long id;

    @NotNull
    @ApiModelProperty(name = "parkId", value = "园区id")
    private Long parkId;

    @ApiModelProperty(name = "buildingId", value = "楼栋id")
    private Long buildingId;
    /**
     * 房间id
     */
    @ApiModelProperty(name = "houseId", value = "房间id")
    private Long houseId;

    /**
     * 仪表名称
     */
    @NotBlank
    @ApiModelProperty(name = "meterFullName", value = "仪表名称")
    private String meterFullName;
    /**
     * 仪表类型id
     */
    @NotNull
    @ApiModelProperty(name = "meterId", value = "仪表类型id")
    private Long meterId;
    /**
     * 最大读数
     */
    @Min(0)
    @NotNull
    @ApiModelProperty(name = "maxNum", value = "最大读数")
    private BigDecimal maxNum;
    /**
     * 初始读数
     */
    @Min(0)
    @NotNull
    @ApiModelProperty(name = "initNum", value = "初始读数")
    private BigDecimal initNum;
    /**
     * 初始日期
     */
    @NotNull
    @ApiModelProperty(name = "initTime", value = "初始日期")
    private Date initTime;
    /**
     * 倍率
     */
    @Min(0)
    @NotNull
    @ApiModelProperty(name = "rate", value = "倍率")
    private BigDecimal rate;
    /**
     * 损耗率
     */
    @ApiModelProperty(name = "attritionRate", value = "损耗率")
    private BigDecimal attritionRate;
    /**
     * 是否是主表:0否,1是
     */
    @ApiModelProperty(name = "isMaster", value = "是否是主表:0否,1是")
    private Integer isMaster;
    /**
     * 父表id
     */
    @ApiModelProperty(name = "parentId", value = "父表id")
    private Long parentId;
    /**
     * 是否抄表:0否,1是
     */
    @ApiModelProperty(name = "isMeterReading", value = "是否抄表:0否,1是")
    private Integer isMeterReading;
    /**
     * 集中器号
     */
    @ApiModelProperty(name = "concentratorCode", value = "集中器号")
    private String concentratorCode;

    @ApiModelProperty(name = "remark", value = "备注说明")
    private String remark;


}
