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

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

import java.util.List;
import java.util.Map;

/**
 * @Author 蔡文强
 * @Date 2023/4/20 15:56
 * @Description 全部电站运营统计信息
 */
@Data
@ApiModel(value = "全部电站运营统计信息")
public class SpcStationStatisticsAllVO {

    /**
     * 已创建电站数
     */
    @ApiModelProperty(name = "createdCount", value = "已创建电站数")
    private Integer createdCount;

    /**
     * 未启用电站数
     */
    @ApiModelProperty(name = "disableCount", value = "未启用电站数")
    private Integer disableCount;

    /**
     * 运营中电站数
     */
    @ApiModelProperty(name = "operateCount", value = "运营中电站数")
    private Integer operateCount;

    /**
     * 暂停中电站数
     */
    @ApiModelProperty(name = "pausedCount", value = "暂停中电站数")
    private Integer pausedCount;


    /**
     * 今日充电度数(度)
     */
    @ApiModelProperty(name = "chargingDegree", value = "今日充电度数(度)")
    private Double chargingDegree;
    /**
     * 今日充电收入(元)
     */
    @ApiModelProperty(name = "income", value = "今日充电收入(元)")
    private Double income;

    /**
     * 累计充电度数(度)
     */
    @ApiModelProperty(name = "totalChargingDegree", value = "累计充电度数(度)")
    private Double totalChargingDegree;
    /**
     * 累计充电收入(元)
     */
    @ApiModelProperty(name = "", value = "累计充电收入(元)")
    private Double totalIncome;
    /**
     * 累计充电次数
     */
    @ApiModelProperty(name = "totalChargeCount", value = "累计充电次数")
    private Integer totalChargeCount;

    @ApiModelProperty(name = "totalChargeServiceFee", value = "累计充电服务费")
    private Double totalChargeServiceFee;


    @ApiModelProperty(name = "totalChargeFee", value = "累计充电费用")
    private Double totalChargeFee;

    /**
     * 累计充电时长(小时)
     */
    @ApiModelProperty(name = "totalChargeHours", value = "累计充电时长(小时)")
    private Double totalChargeHours;


    /**
     *  累计二氧化碳减排(摩尔)
     */
    @ApiModelProperty(name = "totalCarbonReduction", value = "累计二氧化碳减排(摩尔)")
    private Long totalCarbonReduction;
    /**
     *  累计相当于植树量(0.01颗)
     */
    @ApiModelProperty(name = "totalTreeCount", value = "累计相当于植树量(0.01颗)")
    private Double totalTreeCount;


    /**
     * 昨日充电金额(元)
     */
    @ApiModelProperty(name = "yesterdayAmount", value = "昨日充电金额(元)")
    private Double yesterdayAmount;

    /**
     * 昨日充电金额环比增长
     */
    @ApiModelProperty(name = "percent1", value = "昨日充电金额环比增长")
    private Double percent1;


    /**
     * 昨日充电时长(小时)
     */
    @ApiModelProperty(name = "yesterdayChargeHours", value = "昨日充电时长(小时)")
    private Double yesterdayChargeHours;
    /**
     * 昨日充电时长环比增长
     */
    @ApiModelProperty(name = "percent2", value = "昨日充电时长环比增长")
    private Double percent2;


    /**
     * 昨日充电度数
     */
    @ApiModelProperty(name = "yesterdayChargingDegree", value = "昨日充电度数")
    private Double yesterdayChargingDegree;
    /**
     * 昨日充电度数环比增长
     */
    @ApiModelProperty(name = "percent3", value = "昨日充电度数环比增长")
    private Double percent3;


    /**
     * 昨日充电次数
     */
    @ApiModelProperty(name = "yesterdayChargeCount", value = "昨日充电次数")
    private Integer yesterdayChargeCount;
    /**
     * 昨日充电次数环比增长
     */
    @ApiModelProperty(name = "percent4", value = "昨日充电次数环比增长")
    private Double percent4;

    /**
     * 昨日充电站度数排行
     */
    @ApiModelProperty(name = "rankingList", value = "昨日充电站度数排行")
    private List<Map<String, Object>> rankingList;

    /**
     * 电站数
     */
    @ApiModelProperty(name = "stationCount", value = "电站数")
    private Integer stationCount;
    /**
     * 终端数
     */
    @ApiModelProperty(name = "terminalCount", value = "终端数")
    private Integer terminalCount;

    /**
     * 电站点位地图
     */
    @ApiModelProperty(name = "stationMap", value = "电站点位地图")
    private List<StationMapVO> stationMap;

    /**
     * 未启用电站数
     */
    @ApiModelProperty(name = "terminalEnableCount", value = "已启用终端数")
    private Integer terminalEnableCount;


    /**
     * 终端充电数量
     */
    @ApiModelProperty(name = "acChargingCount", value = "ac终端充电数量")
    private Integer acChargingCount;
    /**
     * 终端空闲数量
     */
    @ApiModelProperty(name = "acFreeCount", value = "ac终端空闲数量")
    private Integer acFreeCount;
    /**
     * 终端离线数量
     */
    @ApiModelProperty(name = "acOfflineCount", value = "ac终端离线数量")
    private Integer acOfflineCount;
    /**
     * 终端占用数量
     */
    @ApiModelProperty(name = "acOccupyCount", value = "ac终端占用数量")
    private Integer acOccupyCount;
    /**
     * 终端故障数量
     */
    @ApiModelProperty(name = "acFaultCount", value = "ac终端故障数量")
    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 = "dcChargingCount", value = "dc终端充电数量")
    private Integer dcChargingCount;
    /**
     * 终端空闲数量
     */
    @ApiModelProperty(name = "dcFreeCount", value = "dc终端空闲数量")
    private Integer dcFreeCount;
    /**
     * 终端离线数量
     */
    @ApiModelProperty(name = "dcOfflineCount", value = "dc终端离线数量")
    private Integer dcOfflineCount;
    /**
     * 终端占用数量
     */
    @ApiModelProperty(name = "dcOccupyCount", value = "dc终端占用数量")
    private Integer dcOccupyCount;
    /**
     * 终端故障数量
     */
    @ApiModelProperty(name = "dcFaultCount", value = "dc终端故障数量")
    private Integer dcFaultCount;


}
