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

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.nest.springwrap.core.mp.base.BaseEntity;

/**
 * @Author 蔡文强
 * @Date 2023/4/13 15:56
 * @Description 充电终端表
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("spc_station_charge_terminal")
@ApiModel(value="SpcStationChargeTerminal对象", description="充电终端表")
public class SpcStationChargeTerminal extends BaseEntity {

    /**
     * 所属充电站
     */
    @ApiModelProperty(name = "stationId", value = "所属充电站")
    private Long stationId;
    /**
     * 电桩名称
     */
    @ApiModelProperty(name = "chargeTerminalName", value = "电桩名称")
    private String chargeTerminalName;
    /**
     * 产品编码
     */
    @ApiModelProperty(name = "productKey", value = "产品编码")
    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 = "terminalName", value = "终端名称")
    private String terminalName;

    /**
     * 枪号
     */
    @ApiModelProperty(name = "gunNumber", value = "枪号(1-n)")
    private Integer gunNumber;

    /**
     * 启停状态(1:启用 2：停用)
     */
    @ApiModelProperty(name = "enableStatus", value = "启停状态(1:启用 2:停用)")
    private Integer enableStatus;
    /**
     * 插枪状态(1:已插枪 2:未插枪 3:未知)
     */
    @ApiModelProperty(name = "gunStatus", value = "插枪状态(1:已插枪 2:未插枪 3:未知)")
    private Integer gunStatus;
    /**
     * 工作状态(0:空闲 1:充电 2:充电结束 4:故障 5:等待充电 6:预约 7:在线更新 8:离线状态)
     */
    @ApiModelProperty(name = "workStatus", value = "工作状态(0:空闲 1:充电 2:充电结束 4:故障 5:等待充电 6:预约 7:在线更新 8:离线状态)")
    private Integer workStatus;


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

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

    /**
     * 归属充电站
     */
    @ApiModelProperty(name = "stationName", value = "归属充电站")
    private String stationName;
    /**
     * 电站属性(1:自营 2:代运营)
     */
    @ApiModelProperty(name = "stationProperty", value = "电站属性(1:自营 2:代运营)")
    private Integer stationProperty;
    /**
     * 投运时间
     */
    @ApiModelProperty(name = "operationTime", value = "投运时间")
    private String operationTime;
    /**
     * 协议版本
     */
    @ApiModelProperty(name = "protocolVersion", value = "协议版本")
    private String protocolVersion;
    /**
     * 通信运营商
     */
    @ApiModelProperty(name = "businessName", value = "通信运营商")
    private String businessName;
    /**
     * 设备生产日期
     */
    @ApiModelProperty(name = "productionDate", value = "设备生产日期")
    private String productionDate;
    /**
     * 电桩编码
     */
    @ApiModelProperty(name = "stakeCode", value = "电桩编码")
    private String stakeCode;
    /**
     * 电桩类型(1:直流 2:交流)
     */
    @ApiModelProperty(name = "stakeType", value = "电桩类型(1:直流 2:交流)")
    private Integer stakeType;
    /**
     * 出厂系型号
     */
    @ApiModelProperty(name = "factoryModel", value = "出厂系型号")
    private String factoryModel;
    /**
     * 电桩国标
     */
    @ApiModelProperty(name = "nationalStandard", value = "电桩国标")
    private String nationalStandard;
    /**
     * 电桩功率
     */
    @ApiModelProperty(name = "stakePower", value = "电桩功率")
    private Integer stakePower;
    /**
     * 辅助电源支持
     */
    @ApiModelProperty(name = "electricalSupport", value = "辅助电源支持")
    private String electricalSupport;
    /**
     * 输入电压
     */
    @ApiModelProperty(name = "inputVoltage", value = "输入电压")
    private Integer inputVoltage;
    /**
     * 最大电压
     */
    @ApiModelProperty(name = "maxVoltage", value = "最大电压")
    private Integer maxVoltage;
    /**
     * 最小电压
     */
    @ApiModelProperty(name = "minVoltage", value = "最小电压")
    private Integer minVoltage;
    /**
     * 最大电流
     */
    @ApiModelProperty(name = "maxCurrent", value = "最大电流")
    private Integer maxCurrent;
    /**
     * 最小电流
     */
    @ApiModelProperty(name = "minCurrent", value = "最小电流")
    private Integer minCurrent;
    /**
     * 恒功率区间
     */
    @ApiModelProperty(name = "powerZone", value = "恒功率区间")
    private String powerZone;
    /**
     * 并充支持
     */
    @ApiModelProperty(name = "chargeSupport", value = "并充支持")
    private String chargeSupport;

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

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

    /**
     * soc限制
     */
    @ApiModelProperty(name = "maxSocLimit", value = "soc限制")
    private String maxSocLimit;

    @ApiModelProperty(name = "parkSpaceId", value = "停车位id")
    private String parkSpaceId;

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


}
