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

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @Author 蔡文强
 * @Date 2023/4/18 15:56
 * @Description 小程序电站简要信息
 */
@Data
@ApiModel(value = "小程序电站简要信息")
public class SpcStationAppVO {

    /**
     * 充电站ID
     */
    @ApiModelProperty(name = "stationName", value = "充电站ID")
    private Long stationId;

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

    /**
     * 电站详细地址
     */
    @ApiModelProperty(name = "address", value = "电站详细地址")
    private String address;

    /**
     * 经度
     */
    @ApiModelProperty(name = "longitude", value = "经度")
    private Double longitude;

    /**
     * 纬度
     */
    @ApiModelProperty(name = "latitude", value = "纬度)")
    private Double latitude;

    /**
     * 停车收费说明
     */
    @ApiModelProperty(name = "instruction", value = "停车收费说明")
    private String instruction;

    /**
     * 直流(快充)数量
     */
    @ApiModelProperty(name = "dcCount", value = "直流(快充)数量")
    private Integer dcCount;

    /**
     * 直流(快充)空闲数量
     */
    @ApiModelProperty(name = "dcFreeCount", value = "直流(快充)空闲数量")
    private Integer dcFreeCount;

    /**


    /**
     * 交流(慢充)数量
     */
    @ApiModelProperty(name = "acCount", value = "交流(慢充)数量")
    private Integer acCount;

    /**
     * 交流(慢充)空闲数量
     */
    @ApiModelProperty(name = "acFreeCount", value = "交流(慢充)空闲数量")
    private Integer acFreeCount;

    @ApiModelProperty(name = "acFreeCount", value = "交流(慢充)忙数量")
    private Integer acBusyCount;
    @ApiModelProperty(name = "dcFreeCount", value = "直流(快充)忙数量")
    private Integer dcBusyCount;
    @ApiModelProperty(name = "acFreeCount", value = "交流(慢充)忙数量")
    private Integer acChargingCount;
    @ApiModelProperty(name = "dcFreeCount", value = "直流(快充)忙数量")
    private Integer dcChargingCount;

    @ApiModelProperty(name = "dcOfflineCount", value = "直流(快充)离线数量")
    private Integer dcOfflineCount;
    @ApiModelProperty(name = "acOfflineCount", value = "交流(慢充)离线数量")
    private Integer acOfflineCount;

    @ApiModelProperty(name = "dcFaultCount", value = "直流(快充)故障数量")
    private Integer dcFaultCount;
    @ApiModelProperty(name = "acFaultCount", value = "交流(慢充)故障数量")
    private Integer acFaultCount;
    @ApiModelProperty(name = "acChargeEndCount", value = "ac终端充电完成数量")
    private Integer acChargeEndCount;

    @ApiModelProperty(name = "acReadyChargeCount", value = "ac终端等待充电数量")
    private Integer acReadyChargeCount;
    @ApiModelProperty(name = "dcChargeEndCount", value = "dc终端充电完成数量")
    private Integer dcChargeEndCount;
    @ApiModelProperty(name = "dcReadyChargeCount", value = "dc终端等待充电数量")
    private Integer dcReadyChargeCount;
    @ApiModelProperty(name = "dcOccupyCount", value = "直流(快充)占用数量")
    private Integer dcOccupyCount;
    @ApiModelProperty(name = "acOccupyCount", value = "交流(慢充)占用数量")
    private Integer acOccupyCount;

    /**
     * 空闲终端数量
     */
    @ApiModelProperty(name = "freeCount", value = "空闲终端数量")
    private Integer freeCount;

    /**
     * 距离当前位置(km)
     */
    @ApiModelProperty(name = "distance", value = "距离当前位置(km)")
    private Double distance;

    /**
     * 当前时间段电价(单位分)
     */
    @JsonSerialize(nullsUsing = NullSerializer.class)
    @ApiModelProperty(name = "chargePrice", value = "当前时间段电价(单位分)")
    private Integer chargePrice;

    @ApiModelProperty(name = "当前时间段", value = "当前时间段")
    private String currentPeriod;


    @ApiModelProperty(name = "stationNo", value = "电站编号")
    private String stationNo;

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