package com.yuchen.saas.parking.charge.api.dto.charge;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.nest.springwrap.core.tenant.mp.TenantEntity;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @Author 蔡文强
 * @Date 2023/4/13 15:56
 * @Description 新增充电终端传参
 */
@Data
@ApiModel(value="新增充电终端传参", description="新增充电终端传参")
public class SpcStationChargeTerminalDTO extends TenantEntity {

    /**
     * 所属充电站
     */
    @ApiModelProperty(name = "stationId", value = "所属充电站")
    @NotNull(message = "所属充电站不能为空")
    private Long stationId;
    /**
     * 电桩名称
     */
    @ApiModelProperty(name = "chargeTerminalName", value = "电桩名称")
    @NotBlank(message = "电桩名称不能为空")
    private String chargeTerminalName;

    /**
     * 电桩编码
     */
    @ApiModelProperty(name = "stakeCode", value = "电桩编码")
    @NotBlank(message = "电桩编码不能为空")
    private String stakeCode;

    /**
     * 终端编号
     */
    @ApiModelProperty(name = "terminalNo", value = "终端编号")
    private String terminalNo;

    /**
     * 产品编码
     */
    @ApiModelProperty(name = "productKey", value = "产品编码")
    @NotBlank(message = "产品编码不能为空")
    private String productKey;
    /**
     * 品牌型号
     */
    @ApiModelProperty(name = "brandModel", value = "品牌型号")
    private String brandModel;
    /**
     * 设备安装位置
     */
    @ApiModelProperty(name = "installLocation", value = "设备安装位置")
    private String installLocation;
    /**
     * 设备点位
     */
    @ApiModelProperty(name = "installPoint", value = "设备点位")
    private String installPoint;
    /**
     * 备注信息
     */
    @ApiModelProperty(name = "remark", value = "备注信息")
    private String remark;
    /**
     * 设备照片
     */
    @ApiModelProperty(name = "devicePhoto", value = "设备照片")
    private String devicePhoto;

    /**
     * 是否收占位費
     */
    @ApiModelProperty(name = "isCharge", value = "是否收占位費(1:收費 2:不收費)")
    private Integer isCharge;

    /**
     * 车位号
     */
    @ApiModelProperty(name = "spaceNo", value = "车位号")
    private String spaceNo;

    /**
     * 归属充电站
     */
    @ApiModelProperty(name = "stationName", value = "归属充电站")
    private String stationName;

    @ApiModelProperty(name = "parkSpaceNo", value = "停车场车位")
    private String parkSpaceNo;

    @ApiModelProperty(name = "gunNumber", value = "枪号")
    private Integer gunNumber;
}
